package com.gopay.common.domain.cps.cbrmb;

import java.math.BigDecimal;
import java.util.Date;

import com.gopay.common.constants.approval.DecisionValue;
import com.gopay.common.constants.cbrmb.CbRmb01721PortalStep;
import com.gopay.common.constants.trans.PayBankOpType;
import com.gopay.common.domain.BaseEntity;
import com.gopay.common.domain.bank.BcdlMessage;
import com.gopay.common.domain.cps.transfer.BankPayeeVO;

public class Tran01721PortalVO extends BaseEntity {

	/**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = -6538204556979654843L;

	private String gopayOrderId;

	private String merOrderId;
	
	private String batchNum;

	private String goodsDescription;

	private String goodsName;

	private String sellerName;

	private String payerName;

	private String payerCountry;

	private Date txnTime;

	private BigDecimal txnAmount;

	private BigDecimal feeAmt;

	private String custId;

	private String filePath;

	private CbRmb01721PortalStep cbRmb01721PortalStep;

	private boolean hasAcctTranPri;
	
	/**
     * 付款方账号
     */
    private String acctId;
	
	
    /**
     * 操作类型：申请、申请确认、审核  PayBankOpType
     */
    private PayBankOpType opType;
    
    /**
     * 自动结算的节假日白名单规则ID
     */
    private String ruleId;
    
    /**
     * 付款人银行信息
     */
    private BankPayeeVO bank;
    
    /**
     * 备注信息
     */
    private String remark;
    
    /**
     * userId
     * @return
     */
    private String userId;
    
    /**
     * 审批结果 DecisionValue
     * 申请确认、财务人员审核、国付宝审核
     */
    private DecisionValue decision;
    
    /**
     * 审批描述
     */
    private String decisionMsg;
    
    /**
     * 银企直联
     */
    private BcdlMessage bcdl;
    
    /**
     * 是否自动结算转线下
     */
    private boolean isAuto2Offline = false;
    
    /**
     * 是否线下支付
     */
    private boolean isOffPay;
    
    /**
     * 线下付款银行代码
     */
    private String offLineBankCode;
    
    /**
     * 线下付款银行订单号
     */
    private String offLineBankOrderNum;
    
    /**
     * 运单号
     */
    private String waybill;

    /**
     * 承运方
     */
    private String carrierName;

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}


	public BankPayeeVO getBank() {
		return bank;
	}

	public void setBank(BankPayeeVO bank) {
		this.bank = bank;
	}

	public String getGopayOrderId() {
		return gopayOrderId;
	}

	public void setGopayOrderId(String gopayOrderId) {
		this.gopayOrderId = gopayOrderId;
	}

	public String getMerOrderId() {
		return merOrderId;
	}

	public void setMerOrderId(String merOrderId) {
		this.merOrderId = merOrderId;
	}

	public String getBatchNum() {
		return batchNum;
	}

	public void setBatchNum(String batchNum) {
		this.batchNum = batchNum;
	}

	public String getGoodsDescription() {
		return goodsDescription;
	}

	public void setGoodsDescription(String goodsDescription) {
		this.goodsDescription = goodsDescription;
	}

	public String getGoodsName() {
		return goodsName;
	}

	public void setGoodsName(String goodsName) {
		this.goodsName = goodsName;
	}

	public String getSellerName() {
		return sellerName;
	}

	public void setSellerName(String sellerName) {
		this.sellerName = sellerName;
	}

	public String getPayerName() {
		return payerName;
	}

	public void setPayerName(String payerName) {
		this.payerName = payerName;
	}

	public String getPayerCountry() {
		return payerCountry;
	}

	public void setPayerCountry(String payerCountry) {
		this.payerCountry = payerCountry;
	}

	public Date getTxnTime() {
		return txnTime;
	}

	public void setTxnTime(Date txnTime) {
		this.txnTime = txnTime;
	}

	public BigDecimal getTxnAmount() {
		return txnAmount;
	}

	public void setTxnAmount(BigDecimal txnAmount) {
		this.txnAmount = txnAmount;
	}

	public BigDecimal getFeeAmt() {
		return feeAmt;
	}

	public void setFeeAmt(BigDecimal feeAmt) {
		this.feeAmt = feeAmt;
	}

	public String getCustId() {
		return custId;
	}

	public void setCustId(String custId) {
		this.custId = custId;
	}

	public String getFilePath() {
		return filePath;
	}

	public void setFilePath(String filePath) {
		this.filePath = filePath;
	}

	public CbRmb01721PortalStep getCbRmb01721PortalStep() {
		return cbRmb01721PortalStep;
	}

	public void setCbRmb01721PortalStep(CbRmb01721PortalStep cbRmb01721PortalStep) {
		this.cbRmb01721PortalStep = cbRmb01721PortalStep;
	}

	public boolean isHasAcctTranPri() {
		return hasAcctTranPri;
	}

	public void setHasAcctTranPri(boolean hasAcctTranPri) {
		this.hasAcctTranPri = hasAcctTranPri;
	}

	public String getAcctId() {
		return acctId;
	}

	public void setAcctId(String acctId) {
		this.acctId = acctId;
	}

	public PayBankOpType getOpType() {
		return opType;
	}

	public void setOpType(PayBankOpType opType) {
		this.opType = opType;
	}

	public String getRuleId() {
		return ruleId;
	}

	public void setRuleId(String ruleId) {
		this.ruleId = ruleId;
	}

	public DecisionValue getDecision() {
		return decision;
	}

	public void setDecision(DecisionValue decision) {
		this.decision = decision;
	}

	public String getDecisionMsg() {
		return decisionMsg;
	}

	public void setDecisionMsg(String decisionMsg) {
		this.decisionMsg = decisionMsg;
	}

	public BcdlMessage getBcdl() {
		return bcdl;
	}

	public void setBcdl(BcdlMessage bcdl) {
		this.bcdl = bcdl;
	}

	public boolean isAuto2Offline() {
		return isAuto2Offline;
	}

	public void setAuto2Offline(boolean isAuto2Offline) {
		this.isAuto2Offline = isAuto2Offline;
	}

    public boolean isOffPay() {
        return isOffPay;
    }

    public void setOffPay(boolean isOffPay) {
        this.isOffPay = isOffPay;
    }

    public String getOffLineBankCode() {
        return offLineBankCode;
    }

    public void setOffLineBankCode(String offLineBankCode) {
        this.offLineBankCode = offLineBankCode;
    }

    public String getOffLineBankOrderNum() {
        return offLineBankOrderNum;
    }

    public void setOffLineBankOrderNum(String offLineBankOrderNum) {
        this.offLineBankOrderNum = offLineBankOrderNum;
    }

    public String getWaybill() {
        return waybill;
    }

    public void setWaybill(String waybill) {
        this.waybill = waybill;
    }

    public String getCarrierName() {
        return carrierName;
    }

    public void setCarrierName(String carrierName) {
        this.carrierName = carrierName;
    }

}
